﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
using VSAddinLibrary.Controllers;
using VSAddinLibrary.Attributes;
using EnvDTE;

namespace ExampleAddin.Commands
{
  [VSCommandDeclaration(true)]
  [VSCommandCaption("My Command 1")]
  public class MyCommand1 : IVSCommand
  {
    #region IVSCommand Members

    private Command _command;
    public Command Command
    {
      get { return _command; }
      set { _command = value; }
    }

    public string CommandName
    {
      get { return "MyCommand1"; }
    }

    public string ToolTip
    {
      get { return ""; }
    }

    public string Caption
    {
      get { return "My Command 1"; }
    }

    public string IconPath
    {
      get { throw new NotImplementedException(); }
    }

    public void QueryStatus(EnvDTE.vsCommandStatusTextWanted NeededText, ref EnvDTE.vsCommandStatus StatusOption, ref object CommandText)
    {
      StatusOption = (vsCommandStatus)(vsCommandStatus.vsCommandStatusSupported | vsCommandStatus.vsCommandStatusEnabled);
    }

    public void Exec(EnvDTE.vsCommandExecOption ExecuteOption, ref object VariantIn, ref object VariantOut, ref bool Handled)
    {
      MessageBox.Show(CommandName);
    }

    #endregion


  }
}
